package osoa.client;


import net.sf.json.JSONObject;

import java.util.List;
import com.odianyun.soa.client.business.SoaMethodLocatorMetadata;
import com.odianyun.soa.client.business.SoaMethodLocatorMetadata;
import com.odianyun.soa.client.business.SoaTypeReference;
public enum RemoteSoaServiceEnum implements SoaMethodLocatorMetadata {

	/*================================================================================================================================================*/
	/**
	* 分销相关
	*/
	/**
	 * @Author luokaichuang
	 * @Description  商家信息查询
	 * @Date 17:12 2018/9/3
	 * @Param
	 * @return
	 **/
	// daima


	;
	



    private DomainEnum domainEnum;

	private String serviceName;// 服务名称

	private String methodName;// 方法名

	private SoaTypeReference<?> soaTypeReference; // 返回对象类型

	private String serviceVersion;// 版本

	private Long timeout; // timeout 必须大于 readTimeout

	private Long readTimeout;

	private Boolean isRecordLog;

	RemoteSoaServiceEnum(DomainEnum domainEnum, String serviceName, String methodName, SoaTypeReference<?>  soaTypeReference, String serviceVersion,
			Long timeout, Long readTimeout, Boolean isRecordLog) {
		this.domainEnum = domainEnum;
		this.serviceName = serviceName;
		this.methodName = methodName;
		this.serviceVersion = serviceVersion;
		this.timeout = timeout;
		this.readTimeout = readTimeout;
		this.soaTypeReference = soaTypeReference;
		this.isRecordLog = isRecordLog;
	}

	public Boolean getRecordLog() {
		return isRecordLog;
	}

	public SoaTypeReference getSoaTypeReference() {
		return soaTypeReference;
	}

	@Override
	public String getServiceName() {
		return serviceName;
	}

	@Override
	public String getMethodName() {
		return methodName;
	}

	public String getServiceVersion() {
		return serviceVersion;
	}

	public Long getTimeout() {
		return timeout;
	}

	public Long getReadTimeout() {
		return readTimeout;
	}

	public DomainEnum getDomainEnum() {
		return domainEnum;
	}
}
